Accord Software, Inc.

Internet Function Call, IFC



An IFC looks and feels like a simple C function call. When an IFC is made, the data referred to in the function's parameter list, directly or indirectly thru any level of pointers, is marshalled into a single request and sent to a server. The server receives the request, reproduces the calling stack and makes a LFC. The server then returns the result back to a client as a response, which the IFC call then returns to the caller via a return statement.

Parameters passed in the calling argument list must not get modified by the implementation of the function and the result of calling the function is always returned by the return statement. An IFC returning a result larger than primitive data type must return it by reference via pointers, or as structures. An IFC Example -- add


/*
 * Accord Software, Inc.
 *
 * Tutorial 00 - CIDL file.
 *
 * Simple add function.  Add two numbers and return 
 * the result.
 */

int
add(a, b)
	int a;
	int b;
{
	return(a+b);
}

AccordSTAR Generator treats the above IFC/IDL interface as follows:

- add is an IFC name. i.e. a request name
- int a and b make up the request data to be sent to a server
- int is expected as the response data from a server.

The data sent in a request by a client is fully defined by arguments in an IFC and the data received in a response from a server is also fully defined by the type of an IFC. The above description is the essence of IFC.

All the IFCs are usually placed in a single C file. This file is known as the CIDL Specification.

CIDL Tutorials shows you how to exchange practical data structure such as doubly linked lists, tree, tables, array, etc. between client and server with ease.


E-Mail:webmaster@accord.com
[P-007] Updated March 14, 1996
CIDL and IFC are trademarks of Accord Software, Inc.
Copyright © 1993-1996 Accord Software, Inc. All rights reserved.